■ IC-7610のサブダイアルの製作 ■
 超久し振りのページ更新です。今回のネタのスタートは、コイツです。随分前に購入し、どこかに片付けていたんだが、このパンドラの箱を開けてしまった。このコパルのロータリー・エンコーダーは、ウロ覚えだが、確かヤエスかトリオの無線機のメインダイヤルの補修目的で買った筈。で、こいつと得意(ウソ、そんな訳ない)のPICとで、前々から考えていたものを作ろうと思い立った。それがこれっ、
 ICOMのRC-28というリモートエンコーダーです。こいつ、年金暮らしには手が出ないくらい高価。これを動かすには更にRS-BA1なるソフトを購入する必要があるらしい、合計で3万円也。
愛機のIC-7610は、当然にスプリット運用が出来るんだが、高級機にあるサブダイヤルは無い。まぁ普通の運用では出番はないので、無くても無問題だが、ペディション局とのQSOではチョイと欲しい。まぁ、メインとサブを切り替えて使用しても、サホド面倒臭さは無いんだが....。それにしても、無いモノねだりで、
「それじゃぁ作ってしまおう」と相成った。
 コロナ禍で、ペディションも殆どがキャンセルされ、雪で冬ごもりを余儀なくされているので、この有り余る時間を利用しよう。背中を押されるように、こいつの広告も目に入った。値段を見てビックリ、送料込みで650円。う〜ん、Arduinoなるもの、まだ食べていない。食べてみたいのココロなのだぁ。あまりの安さに、「ポチッ」としてしまい、メインとサブの2刀流プロジェクトのスタートと相成りました。
 2021年1月20日
 
早々に新しいオモチャが届いた。早速、PCとUSB(A,B)ケーブルでつないで動作を確認。ソースと言わずスケッチと言うらしいが、サンプルを読み込み、「右矢印」の枠をクリックすると、コンパイルを始め、次いでダウンロードもしてくれて、最後にソフトも動き出す。う〜ん、何とも楽じゃのう。プログラミング言語もC言語と考えてOKなので、何とかなるかも。でも、先日、70歳の古稀になったボケの始まったカビ臭い頭で、うまくコトが進むのかしらん。
2021年1月21日

 
今日は、CI-X(five)とのインタフェースを作成。無くてもヨサゲなんだが、CI-X側がオープンコレクタになっているので、念のため4個のデジトラでIFすることに。早速、IC-7610から出てくる周波数情報をシリアルモニタに表示させてみる。フムフム、問題無さそう。次いで、IC-7610に向けてコマンドを送出。これも無問題、「おぉー」これは幸先が良いわぃ。
 2021年1月22日
 ロータリーエンコーダーの右/左回転によりUP/DWNする機能を入れ込んでみよう。といっても、ライブラリーが充実・豊富なArduino環境、適当なモノをチョイスしてインクルードして出来上がり。ふむふむ、数値が上がったり/下がったりするワイ。これを利用してサブ周波数をUp/Downさせてみよう。で、適当な周波数からUP/DWNさせるスケッチを作成し、動かしてみる。動きはギゴチないが、上がったり、下がったりしてくれている。
2021年1月23日

 9から10への桁上がりや、逆の桁下がりの機能を盛り込み、それらしくなった。....が、動きがギゴチない。この点がプロジェクトのスタート時点から危惧していたところ。う〜ん、古稀の頭では解決策が浮かばないワイ。
2021年1月25日
 ライブラリーを使用してエンコーダー処理をしているが、今日は違うライブラリーで試してみよう。...ってんで、又も適当に(横文字のモノばかりなんで....)選んで、試してみます。Arduinoの便利なところは、大昔のPC9801時代のBasicと同じように、適当な場所に「Serial.print」を入れておけば、欲しい値がシリアルモニタに表示されるので、Debugがスコブる簡単であること。超初心者のHYDには有難い機能です。どうやら、サクサクと動き出しましたが、ゆっくりダイヤルを回す分には問題ないのだが、メチャ早く回すとおかしな動きに。で、単純に+1づつ増やす(あるいは-1づつ減らす)のではなく、増えた分だけ変化させるように。といっても、今度は動き過ぎるので、適当な幅を持たせた。う〜ん、どうやら使用に耐えられそう。
2021年1月28日
  一晩シッカリ寝て、再度Arduinoと向き合うと、日光の一つ手前(イマイチ)。ヤッパリ何か動きが.....。イロイロ試行錯誤するも改善されない。う〜ん、やはり無謀な計画だったかしらん。しゃぁねぇなぁ、実用上は問題ないだろうからと、昼飯を食べ、寝不足を昼寝で解消(出来るわけないっしょ Hi)し、シャックへ。ちなみに、HYDのシャックは田んぼの中の「ポツンと一軒の小屋」、自宅から1Km離れてます。この間で、あるヒラメきが....。シャックに着くなり、早々にヒラメきの妥当性を確認します。....すると、はるかに動きが良くなるではないですかぁ。「やったネェ」と思わず口から出てきました。
 ヒラメきというほどのモノではないのだが、気になったのは無線機側の処理速度です。チッポケなArduino側の処理速度ばかり気にしてましたが、IC-7610側にも問題があるのでは、と思ったのです。CPUは高速処理が可能なモノを使用している筈だが、処理するコトは多いので、周波数設定のコマンドを短い時間に沢山送出すると追いつかないのでは、と。で、Arduino側からCI-Xで送出する際、byteとbyteの間に5msecの隙間を入れみた。そうしたら、ギコチなさが劇的に軽減。完全に無くなった訳ではないが、実用上は全く無問題です。
 そういやぁ、ローカルのOMのところで、最新のYaesu機のCAT設定をした時も、ウエイトを入れないと、うまく動作しなかったことがあったなぁ。今更ながら注意をしなければ。...と思っても、猿と同じでスグに忘れるからなァ (苦Hi)
→最終的にはアレコレと試し、byteとbyte間のウエイトを外し、コマンド送出後にウェイトを15msecとした。
2021年1月29日
 今日はメイン周波数を読み込み、この周波数をサブ周波数に設定する機能を盛り込みます。既にコマンドの送出と吐き出されてくる受信データを表示するコトは、機能確認している。....ので、スグに出来るだろうとタカをくくってました。が、ところが、ところが....、アニはからんや、うまく動作しない。
 例のSerial.printを色んな箇所にハメ込んで、Debugするも要領を得ない。う〜ん、おかしい、こんな筈ではなかったんだが。IC-7610からの受信したデータにはゴミのデータも多いので、ゴミの中から欲しいデータを選ぶのに、「if文」を多用しているが、この構造ミスだろう、とアレコレ探索。でも原因は分からず。そうこうしている内に、送り出すコマンド命令がおかしいかも、とこちらも疑ったりして収集がつかない。ラチがあかず、ほぼ半日を潰してしまっていた。
ソロソロ自宅に戻ろうかと考えたときであった。ナニゲにCI-Xと接続するジャック部を見たのである。何と、2本のコードの内の黒色側の線が切れているではないか! 「ゲェーッ」、こんなコトで半日もツブしたんかよぉ。Arduinoの基板上には小さなLEDがあり、データを送出する時に、このLEDが点滅しており、データは確実に出ていっている筈とハナから疑っていなかったのである、ガックリ。
2021年1月30日
今日も今日とて、Arduinoとニラメッコ。無線機にコマンドを送出してるのだが、無線機からの返りのデータがうまく取り込められない。う〜ん、今日も悪い一日になりそう。またもSerial.printをこれでもかぁ、と一杯入れて切り分けるも要領を得ない。今日も長い一日になりそう。格闘を続けて、そろそろ半日経過する時分にようやく原因を見つけた。if文の「!=」と「==」を多用しているんだが、間違えて反対にしている個所が一つあった。これを修正すると、「アッ!」という間に動き出した。あぁあぁ、これだから初心者は...。
2021年2月01日
今日から2月、珍しく雪ではなく雨が降ってきた。で、今日はArduinoとは遊ばず、どういう機能をソフトに盛り込むか検討した。今のところの案は
 @タクトSW(a)を押すとメイン周波数をサブ周波数にコピー
 AタクトSW(b)とタクトSW(c)を押すとサブ周波数を+5KHz/-5KHzにスッテプ変化
 B動作確認用にLEDを点滅しBeep音を出す
AはSSBでのスプリット対応のためで、5,10,15KHzと周波数を動かすのに便利ではないだろうか。高級機にも無い機能だし面白いかも。まぁ、CI-Xなのでイロイロなことが出来るが、使わない機能を満載して使い辛くてもなぁ。シンプルが一番と判断し、@Bにしよう。問題はケースだろうかしらん。使い勝手のよい大きさ、傾き、なんぞには工夫せねば。ソウソウ、見栄えも考えよう。
 2021年2月2日
 
今日は124年振りかの、2/2での節分だそうな、まぁHYDには無関係なんだが。今朝は、パンドラの箱を見ないように、狭いシヤックの中をアチコチ探索。何となくパンドラっぽいモノを見つけるが、良い子は決して箱のフタを開けません。そうこうしている内に、ついに「第一村人」を発見。う〜ん、大いにヨサゲなんだが、コイツは一体何かしらん。自分で製作していながら、全く思い出せない。サンスイのSTトランスが搭載されているトコロを見るとAF系だということは分かるが、センターメータの意味が分からん。中の基板にあるMC14046のPLLのICもEPSON製のDIP型のProgramableなX'tal-OSCも意味不明。かなり年代を感じさせるが、まぁこのまま朽ちてゴミになるよりマシだろうと、こいつの箱をケースに決定。大きさも傾きもピッタシなんだが、センターメータの穴をどう隠すかが問題。
 ついでに、昨日の計画案のBを実装した。随分前に購入していた秋月の圧電スピーカー(ブザー)を使用したが、メチャ音量が小さい。ケースの中に入れたら聞こえんだろう、TRで増幅しないとマズイかも。と、代替品が無いか探すと、こんなのを見ぃっけ! USED感がありありで、えらくクタビれているが、秋月のより音量が大である。で、スケッチも組み込んで本日は終了。あぁ良かった、パンドラに当たらなくて。

 →音量が小さかった件は、HYDのミス判断でした。beep音の周波数を仕様通りの3KHz位にしたら、それなりになりました。
 2021年2月3日
今日も今日とて、朝食後シャックに速攻。Aの機能を盛り込むべく、悪戦苦闘。というのも、タクトSWを押さないのに入力がLow/Highになってしまうものだから目が点に。まぁ、Arduinoの入出力pinがプルアップ/ダウンされていないのだろう。と、リファレンスを見るも、特に記述は無いようだ。Web検索すると、どうやら意識的に設定時にPULLUPと記述しなければならないようだ。で、このオマジナイを書いて、アレコレとイジクッている内に、思うように動き出した。ところで、@の機能は盛り込まないことにした。単なる電源SWを取り付けてオシマイに。
■閑話休題■
 Web検索中にマコトに便利な、ツールというか資料を見つけた。

http://www.musashinodenpa.com/arduino/ref/arduinoHH12.pdf

これは便利、これがあればリファレンスを見ることはないナァ。

2021年02月04日
 今日も朝から作業開始。ソフトが思うように(?)動き出したんで、先日探し当てたパンドラの箱の穴あけを先ず行います。既に開いている空いた穴を有効活用(うそ、ボロ隠し)したので、穴あけはスグに済む。で、バラック状態の配線をマトモな配線にし直すと、
完成です。
  ところが、トコロが、バラックでアレコレしている内は気が付かなかったコトが判明。インタフェース回路に電源を入れない状態では、CI-XのHigh状態での電圧が下がってしまい、CI-Xにブラ下がっている他のインタフェース(アンテナ自動切換、VL-1000の自動バンド切替、自作リニアの保護回路)が動作しなくなった。う〜ん、弱った魚は目を見りゃ判るわい。同じバスに4人目が乗ったので、もうアカンらしい。イロイロと手を変え品を変えてみるものの、
万歳(お手上げ)に。

2021年02月05日
 しょうがないので、電源は入れっぱなしにして、ソフトでサブダイヤル動作をon/offするコトに仕様変更。せっかく正規に配線し直したんだが、やり直し。ソフトも一部変更が必要です。クリック感が好きなので、SWはタクトSWを使用したいが、もう穴を開けてしまっているので、スナップSWのまま。で、再配線をしてソフトを一部変更します。さぁ、今度はどうよ?
 どうやら無事に動きました、当たりの然ですが。ところが、ところが
好事魔多し。SWをoffにして再度onにすると、最後にサブダイヤルに設定した周波数に戻ってしまう。メインの周波数にならなければならないのに。ウーゥッ!? どこに原因があるのかしらん。例によってSrial.printを多用して切り分けをするも答えを見つけられず、ガックシ
 2021年2月06日
 
 今朝も午前の半日を潰したが、全く原因が分からず。まぁ、何回もon/offすることはないだろうから、このままでも良いかぁ、と半分諦めて昼飯を食べに自宅に戻ります。で、けぇーる途中で思い立った。CI-Xとの通信は、デバッグの時にSerial.printを使用するためにハードのUARTではなく、ライブラリーを利用してソフトウェアシリアルを使用している。このコトと、CI-Xにブラ下がっている乗客が多いということで、ゴミも沢山拾っているのではないか、ということを。で、昼飯を食べて速攻でシャックに戻り、バッファ・クリア処理を入れたら、難なく問題クリア。う〜ん、完璧だねぇ。初心者がすることです、こういうタアイもないミスを平気でヤッてしまいます。
 ところで、サブダイヤルということで製作したんだが、このダイヤル、何とも使い易いのである。何となれば、どなたも無線機の表示を見易くするため、無線機を机の天板より高い位置に置かれているのではないでしょうか。当たりの然に、ダイヤルの位置も高くなります。昔のQRHの多い無線機ではないにしろ、この高い位置で長時間ダイヤルを操作すると腱鞘炎にならないまでも、疲れます。その点、今回自作したダイヤルは、手首の部分が天板に置けるのでラクチンのポジションで、使い易いです。サブダイヤルにと狙ってましたが、案外にメインに格上げするかも。
 2021年2月07日
 昨日の夜からXE RTTYコンテストが始ったが、実質的には今日からスタート。マイナーであろうと、こちとらぁ参加するのである。もっとも上位入賞なんてことはツユほども思ってなく、真ん中辺りであろうという程度である。身の丈を知っているのです。で、今回はCondxが悪く、ネツが入りません。で、未だケースには入れていないRC-28モドキを動かして遊んでいた(飛騨弁で「手むずり」という)。で、ナニゲに10.00000MHzから更にダイヤルを回して周波数を下げようとすると、固まったママに。でも周波数の桁上げ/桁下げ処理で手抜きをしているためで、当の本人が分かっていることです。が、実用上は全然問題なくても、HYD的には気になってしまい、コンテストどころではなくなった。 手抜きの部分は分かっているので、アレコレと処理を追加します。でもでも、なかなかにウマく処理できない。先日と同じように、「!=(等しくない)」と「==(等しい)」とを間違えているんだよなぁ。簡単な処理なのに、結構な時間を使ってようやく出来た、ウレシヤ。
 2021年2月08日
 朝、病院に出向き、ホルターを装着します。24時間の心電図をはかるヤツです。不整脈を心房の電流経路を焼き切る手術(カテーテル・アブレーション)で治してから定期的に測定していますが、悪い兆候は今のところありません。
 帰宅してから、早速シャックへ。スプリット運用時をイメージしてサブダイヤルを製作してきたが、案外にメイン使いも出来そうなので、今日はメインとサブとを切替えられるようにしよう。タクトSWとLEDを取り付ける穴を開け、何本かの配線をすればオシマイ。ソフトも超簡易とした。で、どうよって問われればと答えます。う〜ん、好みもあるかもしれないが、HYDは断然コッチをセレクトします。メータが付いていた穴は、とりあえずシールでカバーしました。
 2021年2月09日
  朝、病院へ行きホルターを脱着。キカイダー状態から人間に戻った。何より、夜寝る時に電気毛布が使用できるのがウレピー、ここ飛騨は雪国で寒いのである。で、帰宅後シャックに直行し、FT8モードで遊んで貰います。Newの局が居なくなったところで、ソフトの変更を目論見ます。病院で順番を待っている間に、イロイロと考えたのです。ペディション時のスプリット運用を意識して、メインの周波数をサブに展開するのを基本としたが、メインはメインで、サブはサブと独立にした方が良いかもと考えた。まぁ、簡単な追加で出来そうなんで、実使用するかはだがイジクり始めます。ところがギッチョンチョン、スパゲッティ状態が更にゴジャごじゃ状態に。3日後には、このソフト意味不明になるなぁ、絶対に。まぁスタックせず、動きゃぁ良いワイ。ソフトの改造の最後になって、さぁてとぉ、サブ周波数の読み込みコマンドは.....っとなって、になった。メインの周波数読み込み、メインの書き込み、サブの書き込みのコマンドはあるのだが、サブの周波数読み込みのコマンドが無い、ナイ、ない。IC-7610の「CI-Xのリモート機能(シリアル通信)」の補足説明書の最初から最後まで、何度も何度も読む・見るも該当箇所がない。う〜ん、どうなっているのだろうかしらん。とりあえず、メインとサブを入れ替えるコマンドを送り、メインの周波数情報を得た後でメイン・サブを再度入れ替えるというアラワザで対応することにした。ちょち、ガッカリな方法ではある。ご存知なお方が居られたら是非教えて下さい。
 サブダイヤルのダイヤル本体は、ローカルのOMさんからの戴きモノです。TS-790に使用されていたモノらしく、大きさ・質感・偏心率の良さ等、VY FBなもので、コレを取り付けると既製品のような仕上がりになりました(独りヨガリ Hi)
 
 止まれ、これにて宮本武蔵の巻、荒業が不本意ながら終しまいです。
★追伸★
 コロナの関係でペディションは皆無に近いので、コンテストでの使用感を一言。コンテストなので、メインダイヤルとして使用しました。最初はツイツイ本体のダイヤルに手がいってしまいましたが、慣れるに従いコレも無くなります。で、肝心の使い勝手ですが、一回転が2KHzと本体の5KHzと比べてCW/RTTYではチューニングし易いです。でもSSBでは逆に面倒かも。HYDのコンテストは、RUNではなくS&Pなので、このチューニングのし易さは有難かったです。これは手首が天板の上で安定していることも相まっています。そして何より、右手が疲れません、これでは前には戻れませんネ。コンテストでは5KHzのUP/DOWN機能は使わないのでは、と思ってましたが、メチャ便利に使用しました。コレを使いだすと本体のダイヤルは頻度が激減するような気がします。ちょっと気になるのは、バンドSWを押してバンドを変えた時です。バグではなく仕様なのですが、バンド切替してサブダイヤルを回すと、直前まで使用していたバンド・周波数に戻ってしまいます。バンドを切り替えるたびにオペレートSWを1回offにしてonにすれば問題はありませんがチョチ面倒。ペディション時は途中でのバンド切替は無いので無問題ですが、コンテストでは切替が頻繁です。ダイヤルを回すたびに、その時点の周波数を読み込めば解決できるのですが、そうなるとCI-Xでのやり取りが膨大となり、うまく動作しないと思います。これも「慣れ」てしまえば問題ない筈なので、あまり気にしないコトにします。で、結論、ご本尊と比べると,3%位の経費ながらコストパフォーマンスに秀でた
「非常に便利なツール」に仕上がりました。.....もっともソフト制作の手間賃を入れると.....苦Hi 
 ホームページのTOPに戻る